package org.zoomdev.zoom.validator;

/**
 * 对默认值进行包装
 */
public class DefaultValueWrapper {

    private final Object defaultValue;

    public DefaultValueWrapper(Object defaultValue) {
        this.defaultValue = defaultValue;
    }

    /**
     * 如果是一个pojo，则填充null字段为默认值，之后直接返回原pojo
     * 如果是一个简单值，并且是null，则返回默认值
     *
     * @param value
     * @return
     */
    public Object wrap(Object value) {
        if (value == null) {
            return defaultValue;
        }
        return value;
    }
}
